home *** CD-ROM | disk | FTP | other *** search
/ Aminet 15 / Aminet 15 - Nov 1996.iso / Aminet / dev / basic / ace24dist.lha / ace24.lha / include / Exec / nodes.h < prev    next >
C/C++ Source or Header  |  1996-09-10  |  2KB  |  84 lines

  1. #ifndef EXEC_NODES_H
  2. #define EXEC_NODES_H 1
  3. /*
  4. ** nodes.h for ACE Basic
  5. **
  6. ** Note: Translated to ACE by ConvertC2ACE
  7. **       @ MapMeadow Software, Nils Sjoholm
  8. **
  9. **
  10. ** Date: 09/02/95
  11. **
  12. **
  13. */
  14.  
  15. /*
  16. ** This are the StructPointer defines for nodes.h
  17. */
  18. #ifndef MinNodePtr
  19. #define MinNodePtr ADDRESS
  20. #endif
  21. #ifndef NodePtr
  22. #define NodePtr ADDRESS
  23. #endif
  24. /*
  25. ** End of StructPointer defines for nodes.h
  26. */
  27.      
  28. #ifndef EXEC_TYPES_H
  29. #include <exec/types.h>
  30. #endif /* EXEC_TYPES_H */
  31.  
  32.  
  33.  
  34. /*
  35.  *  List Node Structure.  Each member in a list starts with a Node
  36.  */
  37.  
  38. STRUCT Node  
  39.     NodePtr  ln_Succ   /* Pointer to next (successor) */
  40.     NodePtr  ln_Pred   /* Pointer to previous (predecessor) */
  41.     BYTE    ln_Type 
  42.     BYTE    ln_Pri      /* Priority,  for sorting */
  43.     ADDRESS   ln_Name        /* ID string,  null terminated */
  44. END STRUCT   /* Note: SHORTINT aligned */
  45.  
  46. /* minimal node -- no type checking possible */
  47. STRUCT MinNode  
  48.     MinNodePtr  mln_Succ 
  49.     MinNodePtr  mln_Pred 
  50. END STRUCT 
  51.  
  52.  
  53. /*
  54. ** Note: Newly initialized IORequests,  and software interrupt structures
  55. ** used with Cause(),  should have type NT_UNKNOWN.  The OS will assign a type
  56. ** when they are first used.
  57. */
  58. /*----- Node Types for LN_TYPE -----*/
  59. #define NT_UNKNOWN  0
  60. #define NT_TASK     1   /* Exec task */
  61. #define NT_INTERRUPT    2
  62. #define NT_DEVICE   3
  63. #define NT_MSGPORT  4
  64. #define NT_MESSAGE  5   /* Indicates message currently pending */
  65. #define NT_FREEMSG  6
  66. #define NT_REPLYMSG 7   /* Message has been replied */
  67. #define NT_RESOURCE 8
  68. #define NT_LIBRARY  9
  69. #define NT_MEMORY   10
  70. #define NT_SOFTINT  11  /* Internal flag used by SoftInits */
  71. #define NT_FONT     12
  72. #define NT_PROCESS  13  /* AmigaDOS Process */
  73. #define NT_SEMAPHORE    14
  74. #define NT_SIGNALSEM    15  /* signal semaphores */
  75. #define NT_BOOTNODE 16
  76. #define NT_KICKMEM  17
  77. #define NT_GRAPHICS 18
  78. #define NT_DEATHMESSAGE 19
  79.  
  80. #define NT_USER     254 /* User node types work down from here */
  81. #define NT_EXTENDED 255
  82.  
  83. #endif  /* EXEC_NODES_H */
  84.